Autogenerated HTML docs for v2.27.0-203-gf402e 
diff --git a/technical/protocol-v2.html b/technical/protocol-v2.html index 4bcfb6a..4fd3703 100644 --- a/technical/protocol-v2.html +++ b/technical/protocol-v2.html 
@@ -1132,14 +1132,28 @@  indicating its sideband (1, 2, or 3), and the server may send "0005\2"   (a PKT-LINE of sideband 2 with no payload) as a keepalive packet.</code></pre>   </div></div>  -<div class="paragraph"><p>The response of <code>fetch</code> is broken into a number of sections separated by  -delimiter packets (0001), with each section beginning with its section  -header.</p></div>  +<div class="paragraph"><p>If the <em>packfile-uris</em> feature is advertised, the following argument  +can be included in the client&#8217;s request as well as the potential  +addition of the <em>packfile-uris</em> section in the server&#8217;s response as  +explained below.</p></div>   <div class="literalblock">   <div class="content">  -<pre><code>output = *section  -section = (acknowledgments | shallow-info | wanted-refs | packfile)  - (flush-pkt | delim-pkt)</code></pre>  +<pre><code>packfile-uris &lt;comma-separated list of protocols&gt;  + Indicates to the server that the client is willing to receive  + URIs of any of the given protocols in place of objects in the  + sent packfile. Before performing the connectivity check, the  + client should download from all given URIs. Currently, the  + protocols supported are "http" and "https".</code></pre>  +</div></div>  +<div class="paragraph"><p>The response of <code>fetch</code> is broken into a number of sections separated by  +delimiter packets (0001), with each section beginning with its section  +header. Most sections are sent only when the packfile is sent.</p></div>  +<div class="literalblock">  +<div class="content">  +<pre><code>output = acknowledgements flush-pkt |  + [acknowledgments delim-pkt] [shallow-info delim-pkt]  + [wanted-refs delim-pkt] [packfile-uris delim-pkt]  + packfile flush-pkt</code></pre>   </div></div>   <div class="literalblock">   <div class="content">  @@ -1165,15 +1179,21 @@  </div></div>   <div class="literalblock">   <div class="content">  +<pre><code>packfile-uris = PKT-LINE("packfile-uris" LF) *packfile-uri  +packfile-uri = PKT-LINE(40*(HEXDIGIT) SP *%x20-ff LF)</code></pre>  +</div></div>  +<div class="literalblock">  +<div class="content">   <pre><code>packfile = PKT-LINE("packfile" LF)   *PKT-LINE(%x01-03 *%x00-ff)</code></pre>   </div></div>   <div class="literalblock">   <div class="content">   <pre><code>acknowledgments section  - * If the client determines that it is finished with negotiations  - by sending a "done" line, the acknowledgments sections MUST be  - omitted from the server's response.</code></pre>  + * If the client determines that it is finished with negotiations by  + sending a "done" line (thus requiring the server to send a packfile),  + the acknowledgments sections MUST be omitted from the server's  + response.</code></pre>   </div></div>   <div class="ulist"><ul>   <li>  @@ -1259,12 +1279,6 @@  which the client has not indicated was shallow as a part of   its request.   </p>  -</li>  -<li>  -<p>  -This section is only included if a packfile section is also  - included in the response.  -</p>   <div class="literalblock">   <div class="content">   <pre><code>wanted-refs section  @@ -1291,6 +1305,31 @@  </p>   <div class="literalblock">   <div class="content">  +<pre><code>packfile-uris section  + * This section is only included if the client sent  + 'packfile-uris' and the server has at least one such URI to  + send.</code></pre>  +</div></div>  +</li>  +<li>  +<p>  +Always begins with the section header "packfile-uris".  +</p>  +</li>  +<li>  +<p>  +For each URI the server sends, it sends a hash of the pack&#8217;s  + contents (as output by git index-pack) followed by the URI.  +</p>  +</li>  +<li>  +<p>  +The hashes are 40 hex characters long. When Git upgrades to a new  + hash algorithm, this might need to be updated. (It should match  + whatever index-pack outputs after "pack\t" or "keep\t".  +</p>  +<div class="literalblock">  +<div class="content">   <pre><code>packfile section   * This section is only included if the client has sent 'want'   lines in its request and either requested that no more  @@ -1344,7 +1383,7 @@  <div id="footer">   <div id="footer-text">   Last updated  - 2020-06-08 18:30:54 PDT  + 2020-06-25 14:07:29 PDT   </div>   </div>   </body>